/*** 1.webpack的单页面he多页面切换 */
/** 
单页面， 也叫SPA， 是只整个项目以一个html文件来承载， 所有的页面切换和逻辑都是写在一个window对象下面的， 这种对于webpack构建而言就只需要有一个入口文件， 一个bundle.js。
多页面， 也就是说整个项目的页面被拆分成多个html页面， 自然在webpack配置时有多个入口文件和多个bundle.js， 这种项目的页面逻辑是单独分开的， 每个页面写在自己的window对象下面，
 页面切换是打开一个新的html即webview。
单页面缺点在于随着业务逻辑的增加前端所需要的代码和静态资源会越来越重， 如果管理不好会造成页面性能下降等， 单页面的页面切换效果需要手动写动画来模拟， 而多页面的各个页面之间是分开的，
 整个项目逻辑拆分， 各自管理， 较为轻便， 同时性能上也要稍由于单页面， 但是在页面之间通讯时较单页面可能会麻烦一些
  */
/*** 2.webpack的按需加载 */
/*** 3.webpack的配置有哪些 */
/*** 4.js写一个回调函数，其实就是问promise的原理了 */
/*** 5.bind与函数柯里化 高级函数（22章）*/
function bind(fn, context) {
  return function () {
    return fn.apply(context, arguments);
  }
}
/*** 6.typeof，isNaN，== 的问输出*/
/*** 7.es6，symbol这个新出的类型有什么用 */
// 防止属性名冲突（表示独一无二的值） let t = Symbol()  typeof t ->Symbol
/*** 8.css盒子并画出来，清除浮动与bfc，两列布局 */
/*** 9.防抖 */
/*** 10.node的EventEmitter用js实现出来 */
var EventEmitter = require('events').EventEmitter; 
var event = new EventEmitter(); 
event.on('some_event', function() { 
    console.log('some_event 事件触发'); 
}); 
setTimeout(function() { 
    event.emit('some_event'); 
}, 1000); 
/*** 11.虚拟dom 其实vue中就有jsx，react的特点之一有jsx，虚拟dom和代码优化有点关系。先说下正常对dom的操作，在浏览器中分为渲染引擎和js引擎，
 * 现在浏览器内核一般都是渲染引擎（生成渲染树），因为js引擎越来越独立了（所谓的v8引擎？）然而你在js中获取dom元素的时候你必须要通过渲染引擎，这样两个线程之间的数据交换自然会很慢。
 * 所以在前端优化中总是要考虑减少dom操作这一项。包括获取dom元素变量储存起来。jsx是把dom元素变成了储存在内存中的数据结构。js很快，操作dom也很快。不过也存在缺点，目前的理解就这么点了*/
/*** 12.路由的实现原理 */
/*** 13.node文件流，java的映射机制（记不太清楚） */